xen/arm: set VPIDR based on the MIDR value of the underlying pCPU
authorStefano Stabellini <sstabellini@kernel.org>
Tue, 6 Mar 2018 19:29:23 +0000 (11:29 -0800)
committerStefano Stabellini <sstabellini@kernel.org>
Tue, 6 Mar 2018 19:32:51 +0000 (11:32 -0800)
commit5abe1baea11a8154e5152d039524892d95241dee
tree5aff012b6c032283fe84ecd6f8c679f3d30914c8
parent5622172378960f20ef0f03c0308cd9233fe86f0d
xen/arm: set VPIDR based on the MIDR value of the underlying pCPU

On big.LITTLE systems not all cores have the same MIDR. Instead of
storing only one VPIDR per domain, initialize it to the value of the
MIDR of the pCPU where the vCPU will run.

This way, assuming that the vCPU has been created with the right pCPU
affinity, the guest will be able to read the right VPIDR value, matching
the one of the physical cpu.

Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
Reviewed-by: Julien Grall <julien.grall@arm.com>
xen/arch/arm/domain.c
xen/arch/arm/vcpreg.c
xen/include/asm-arm/domain.h